1. Field of the Invention
This invention relates to an improved automatic routing method for determining a route for differential current switch (DCS) pairs in a multilayered module, and more particularly to a method for routing the true and complement universal rails of the pair in parallel, one on top of the other in alternate planes of the multilayered module.
2. Description of the Prior Art
Electrical connection of individual components on large, or very large scale integrated circuits and interconnection packages, is achieved using metallic paths between the end points (or pins) which are to be connected. The paths between pins generally can be represented as lying on a grid of links and nodes arranged in a Cartesian coordinate system; x, y or z configuration. A path between two or more pins is referred to as a net. In some instances, it is necessary to use multiple levels of wiring planes wherein a path or a portion of a path must connect with another portion of the path or with a pin on a different plane. This is accomplished by using a "via" which is an etched or drilled hole in the substrate allowing a conductive path to extend from one level to another.
As will be appreciated by those skilled in the art, a single logical net is often physically implemented as a differential current switch pair comprised of two physical connections called rails. Each logical net provides a true and a complement signal and, when the rails are routed in parallel, any coupled noise on the rails tends to be self canceling.
In a particular module to which the teachings of this invention are particularly applicable, single layers of a module are arranged in a repeating configuration in which two adjacent layers carry x-directed conductors (e.g., horizontally directed conductors) followed by two adjacent layers that carry y-directed conductors (e.g., vertically directed conductors). In this module or a multilayered substrate, as illustrated in FIG. 1, the wiring planes are grouped in three pairs of planes in establishing valid wiring paths. In this example two Y-directed pairs and one X-directed pair; namely, (Y1 - Y1'), (X - X'), and (Y2 - Y2') are shown.
A general constraint for all routes is that a connection must be routed on no more than one X and one Y signal layer. An additional constraint with respect to a module or multilayer substrate where the wiring planes are grouped in three pairs of planes as in FIG. 1, differential current switch pairs are routed on the following (TABLE I) plane assignments in order to ensure routing on adjacent planes. For a given first rail plane assignment shown in brackets in the left-hand column, the corresponding second rail plan assignment is shown in brackets in the right-hand column.
TABLE I ______________________________________ True Plane Rail Complement Plane Rail Routing On: Routing On: ______________________________________ (Y1 ,X ) (Y1',X' ) (Y1',X' ) (Y1 ,X ) ( X,Y2 ) ( X',Y2') ( X',Y2') ( X,Y2 ) ______________________________________
In addition, each connection listed for routing typically has associated with it a minimum and a maximum length constraint.
A further constraint in routing a differential current switch pair is that the overall routed length of each rail of the pair is approximately the same length of the other (i.e., within a small delta of the other). This constraint is necessary in order to minimize any difference in propagation delay on one rail as compared to the other. Such a differential propagation delay would cause skew between the complimentary signals.
A number of algorithms have been developed to provide a computer generated routing path for individual connections; a path that conforms to inputted path constraint parameters. Any suitable prior art algorithm may be used to route specific paths with constraints in accordance with the teaching of this invention.
Examples of routing algorithms that may be employed in the practice of this invention are described in U.S. Pat. No. 4,615,011, assigned to the assignee of this application and incorporated herein by reference. One class of well-known and widely-used algorithms is known as a mazerouter algorithm, and is the algorithm to which an explanation of a specific embodiment of the invention refers.
Prior art automatic wiring programs (e.g., mazerouter programs) route one connection at a time without regard to the type of net being routed. They do not include program steps that constrain the route of the second rail to be routed to a path parallel to the first routed rail. In addition, in routing the first rail, no provision is made to select a route where there is space to route the two rails in parallel on adjoining levels.